package org.datedemo;

import java.util.Date;

public class Date2 {
    public static void main(String[] args) {

        System.out.printf("%tF %<tT %<tA%n",System.currentTimeMillis());
        System.out.printf("%tF %<tT %<tA%n",new Date());
        System.out.printf("%tF %<tT %<tA%n",new Date().getTime());

        //1985-10-22 出生
        Date birth = new Date();
        birth.setYear(1985 - 1900);
        birth.setMonth(10 - 1);
        birth.setDate(22);


        System.out.printf("%tF %<tT %<tA%n", birth);

        //计算一下此学生活了多少天。
        long sss = birth.getTime();

        long eee = System.currentTimeMillis();


        //计算
        long days = (eee - sss) / 1000 / 3600 / 24;
        //System.out.println(days);
        System.out.printf("%tF 到 %tF 之间有 %d 天%n", sss, eee, days);

        //输出5天前的日期
        System.out.printf("%tF %<tT%n", eee - (1000 * 3600 * 24 * 5L));

        //输出45天后的日期
        System.out.printf("%tF %<tT%n", eee + (1000 * 3600 * 24 * 25L));


        //指定年月日 建立日期对象
        Date d3 = new Date(1985-1900,10-1,22,18,20,30);
        System.out.printf("%tF %<tT%n",d3);

        //指定年月日字符格式，建立日期对象
        Date d4 = new Date("2023/10/20 10:20:30");
        System.out.printf("%tF %<tT%n",d4);


        //System.out.println();
        //System.out.println(eee);
        //System.out.println(new Date().getTime());
        //System.out.println();


        //date类基本使用
        Date d = new Date();
        int wk = d.getDay();//0星期日 1星期一 - 6
        int mm = d.getMonth() + 1;
        System.out.println(mm);
        int yy = d.getYear() + 1900;
        System.out.println(yy);
        int dd = d.getDate();
        System.out.printf("%d年%02d月%02d日%n", yy, mm, dd);
        int hh = d.getHours();
        int mi = d.getMinutes();
        int ss = d.getSeconds();
        System.out.printf("%02d:%02d:%02d", hh, mi, ss);

    }
}
